#include <bits/stdc++.h>
using namespace std;

void benchmark(const string &name, const auto &func) {
  auto start = chrono::high_resolution_clock::now();
  func();
  auto end = chrono::high_resolution_clock::now();
  auto duration = chrono::duration_cast<chrono::milliseconds>(end - start);
  cout << format("{} execution time: {} ms\n", name, duration.count());
}
mt19937 rnd(0);
int main() {
  int n = 10000000;
  vector<int> a(n);
  for (auto &x : a) x = rnd();
  vector<int> b = a;
  benchmark("const", [&]() {
    ranges::sort(a, [](const int a, const int b) {
      return a > b;
    });
  });
  benchmark("no const", [&]() {
    ranges::sort(b, [](int a, int b) {
      return a > b;
    });
  });
}